﻿Imports System

Namespace System.Workflow.ComponentModel.Serialization
    <AttributeUsage(AttributeTargets.Assembly, AllowMultiple:=True)> _
    Public NotInheritable Class XmlnsDefinitionAttribute
        Inherits Attribute
        ' Methods
        Public Sub New(ByVal xmlNamespace As String, ByVal clrNamespace As String)
            If (xmlNamespace Is Nothing) Then
                Throw New ArgumentNullException("xmlNamespace")
            End If
            If (clrNamespace Is Nothing) Then
                Throw New ArgumentNullException("clrNamespace")
            End If
            Me.xmlNamespace = xmlNamespace
            Me.clrNamespace = clrNamespace
        End Sub


        ' Properties
        Public Property AssemblyName As String
            Get
                Return Me.assemblyName
            End Get
            Set(ByVal value As String)
                Me.assemblyName = value
            End Set
        End Property

        Public ReadOnly Property ClrNamespace As String
            Get
                Return Me.clrNamespace
            End Get
        End Property

        Public ReadOnly Property XmlNamespace As String
            Get
                Return Me.xmlNamespace
            End Get
        End Property


        ' Fields
        Private assemblyName As String
        Private clrNamespace As String
        Private xmlNamespace As String
    End Class
End Namespace

